Arity Raising in Manticore

نویسندگان

  • Lars Bergstrom
  • John H. Reppy
چکیده

Compilers for polymorphic languages are required to treat values in programs in an abstract and generic way at the source level. The challenges of optimizing the boxing of raw values, flattening of argument tuples, and raising the arity of functions that handle complex structures to reduce memory usage are old ones, but take on newfound import with processors that have twice as many registers. We present a novel strategy that uses both control-flow and type information to provide an arity raising implementation addressing these problems. This strategy is conservative — no matter the execution path, the transformed program will not perform extra operations.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Programming in Manticore, a Heterogenous Parallel Functional Language

The Manticore project is an effort to design and implement a new functional language for parallel programming. Unlike many earlier parallel languages, Manticore is a heterogeneous language that supports parallelism at multiple levels. Specifically, the Manticore language combines Concurrent ML-style explicit concurrency with fine-grain, implicitly threaded, parallel constructs. These lectures w...

متن کامل

Title: Extending Manticore to Manage Ip and Virtual Machine Slices in the Federica Project

FEDERICA will provide an IT infrastructure made of switches, routers and computing nodes that will allow the research networking community to test new protocols and techniques for the future Internet. MANTICORE is a software solution that delivers infrastructure as a service to router devices and IP networks. One of the main goals of FEDERICA is to allow network researchers to share the FEDERIC...

متن کامل

Arity Raiser and its Use in Program Specialization

Experiments on generating compilers by specializing specializers with respect to interpreters have shown that the compilers thus obtained have a natural structure only if the specializer does variable splitting. Variable splitting can result in a residual program using several variables to represent the values of a single variable of the original program. In the case of functional programming v...

متن کامل

The Generation of a Higher-Order Online Partial Evaluator

We address the problem of generating an online partial evaluator for a higher-order, functional language from an appropriate interpreter using a state-of-the-art ooine partial evaluator. To ensure termination of the generated online spe-cializer the interpreter computes a self-embedding property on closure values and data structures. This guarantees termination whenever there is no static loop ...

متن کامل

Sub-tree Swapping Crossover and Arity Histogram Distributions

Recent theoretical work has characterised the search bias of GP subtree swapping crossover in terms of program length distributions, providing an exact fixed point for trees with internal nodes of identical arity. However, only an approximate model (based on the notion of average arity) for the mixed-arity case has been proposed. This leaves a particularly important gap in our knowledge because...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2009